package com.research.service.impl;

import java.util.List;

import com.research.common.MetaObjectForXmlHandler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.research.mapper.RegulationMapper;
import com.research.domain.entity.Regulation;
import com.research.service.IRegulationService;

/**
 * 研究机构-规章制度Service业务层处理
 *
 * @author hst
 * @date 2025-03-13
 */
@Service
public class RegulationServiceImpl implements IRegulationService
{
    @Autowired
    private RegulationMapper regulationMapper;

    /**
     * 查询研究机构-规章制度
     *
     * @param ID 研究机构-规章制度主键
     * @return 研究机构-规章制度
     */
    @Override
    public Regulation selectRegulationByID(String ID)
    {
        return regulationMapper.selectRegulationById(ID);
    }

    /**
     * 查询研究机构-规章制度列表
     *
     * @param regulation 研究机构-规章制度
     * @return 研究机构-规章制度
     */
    @Override
    public List<Regulation> selectRegulationList(Regulation regulation)
    {
        return regulationMapper.selectRegulationList(regulation);
    }

    /**
     * 新增研究机构-规章制度
     *
     * @param regulation 研究机构-规章制度
     * @return 结果
     */
    @Override
    public int insertRegulation(Regulation regulation)
    {
        MetaObjectForXmlHandler.fillForInsertGenUuid(regulation);
        return regulationMapper.insertRegulation(regulation);
    }

    /**
     * 修改研究机构-规章制度
     *
     * @param regulation 研究机构-规章制度
     * @return 结果
     */
    @Override
    public int updateRegulation(Regulation regulation)
    {
        MetaObjectForXmlHandler.fillForUpdate(regulation);
        return regulationMapper.updateRegulation(regulation);
    }

    /**
     * 批量删除研究机构-规章制度
     *
     * @param IDs 需要删除的研究机构-规章制度主键
     * @return 结果
     */
    @Override
    public int deleteRegulationByIDs(String[] IDs)
    {
        return regulationMapper.deleteRegulationByIds(IDs);
    }

    /**
     * 删除研究机构-规章制度信息
     *
     * @param ID 研究机构-规章制度主键
     * @return 结果
     */
    @Override
    public int deleteRegulationByID(String ID)
    {
        return regulationMapper.deleteRegulationById(ID);
    }
}
